package d4_innerclass04_2;

public class Test02 {
    public static void main(String[] args) {
        //目标: 匿名内部类的使用场景, 通过作为一个对象传输给方法使用
        //典型的对象回调思想
        //匿名内部类本质是一个子类对象,而且会立即产生一个子类对象
        Swimming s1 = new Swimming() {
            @Override
            public void swim() {
                System.out.println("学生游泳贼快");
            }
        };

        //开发中的模式:
        go(new Swimming() {
            @Override
            public void swim() {
                System.out.println("老师游泳贼慢");
            }
        });
    }

    //定义一个方法反应这个功能
    public static void go(Swimming s){
        System.out.println("开始");
        s.swim();
        System.out.println("结束");
    }
}


//需求:学生和老师要一起参加比赛
//必须会就用接口
interface Swimming{
    void swim();
}
